package cn.kgm.makeGodV2;

import cn.kgm.makeGodV2.event.EventManager;
import com.alibaba.fastjson.JSON;

/**
 * NPC 性格决定器
 *
 * @Version 1.8
 * @Author: Kappi
 * @Date: 2025-9-15 18:12
 * @Description: cn.kgm.makeGodV2.GhostValleySimulation
 */
public class CultivationGame {
    public static void main(String[] args) {
        // 初始化世界状态,并创建100个NPC
        WorldState worldState = WorldState.builder()
                .npcCount(100L)
                .build();
        // 初始化具备五维性格和性格标签的NPC
        WorldInitializerV2.initializeNPCs(worldState);
        // 初始化世界事件
        EventManager eventManager = WorldInitializerV2.initializeEvent(worldState);
        worldState.getAllNpcs()
                .forEach((name, npc) -> {
                    System.out.println("NPC: " + JSON.toJSON(npc.getTraits()));
                    System.out.println("性格标签: " + JSON.toJSON(npc.getPersonalityTagManager().getTags()));
                    eventManager.processNPC(npc);
                });
    }
}
